package com.css.prompt.repository;

import java.util.List;
import java.util.Optional;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;

import com.css.prompt.model.MyPrompt;

public interface MyPromptRepository extends JpaRepository<MyPrompt, Long> {
	
	// 根据 title 和 version 查找
    Optional<MyPrompt> findFirstByTitleAndVersion(String title, String version);

    // 查找最新版本（根据日期）
    Optional<MyPrompt> findFirstByTitleOrderByDateDesc(String title);

    // 查找某个 title 的所有版本
    List<MyPrompt> findAllByTitleOrderByDateDesc(String title);
    
    List<MyPrompt> findByTitle(String title);
    
    Page<MyPrompt> findAll(Pageable pageable);
    
    Page<MyPrompt> findByTitleContainingIgnoreCase(String title, Pageable pageable); // 可选：按关键词分页搜索

    List<MyPrompt> findByTitleAndIsLatestTrue(String title);
}

